#include "../thirdparty/cJSON/cJSON.h"
#include "../thirdparty/log/log.h"

int main(void)
{
    // 创建一个JSON对象
    cJSON *root = cJSON_CreateObject();
    // 向JSON对象中添加一个字符串类型的属性
    cJSON_AddStringToObject(root, "name", "Tom");
    // 向JSON对象中添加一个数字类型的属性
    cJSON_AddNumberToObject(root, "age", 23);
    // 将JSON对象转换为字符串
    char *json_str = cJSON_PrintUnformatted(root);
    // 打印JSON字符串
    log_debug("cJSON:%s", json_str);

    // 释放JSON对象
    cJSON *root2 = cJSON_Parse(json_str);
    // 获取root2对象中的name属性
    cJSON *name_json = cJSON_GetObjectItem(root2, "name");
    // 获取root2对象中的age属性
    cJSON *age_json = cJSON_GetObjectItem(root2, "age");
    // 判断name_json和age_json是否为空
    if (name_json==NULL||age_json==NULL)
    {
        // 如果为空，返回-1
        return -1;
    }
    log_debug("name:%s, age:%d",name_json->string,age_json->valueint);
    // 删除JSON对象
    cJSON_Delete(root);
    cJSON_Delete(root2);
    // 释放JSON字符串
    cJSON_free(json_str);
}